www.gusucode.com > WSTMall PHP网店系统 v1.6.0PHP源码程序 > WSTMall PHP网店系统 v1.6.0/wstmall_v1.6.0_160506/wstmall_v1.6.0_160506/Apps/Home/View/default/js/open_shop.js
function visitorShopInit(){ if(WST.PHONE_VERFY=='0')getVerify(); initTime('serviceStartTime','8'); initTime('serviceEndTime','20'); $.formValidator.initConfig({ theme:'Default',mode:'AutoTip',formID:"myform",debug:true,submitOnce:true,onSuccess:function(){ visitorOpenShop(); return false; },onError:function(msg){ }}); $("#loginName").formValidator({onShow:"",onFocus:"登录账号应该为5-16字母、数字或下划线",onCorrect:""}).inputValidator({min:5,max:16,onError:"登录账号应该为5-16字母、数字或下划线"}).regexValidator({ regExp:"username",dataType:"enum",onError:"登录账号格式错误" }).ajaxValidator({ dataType : "json", async : true, url : Think.U('Home/Users/checkLoginKey'), success : function(data){ var json = WST.toJson(data); if( json.status == "1" ) { return true; } else { return false; } return "该登录账号已被使用"; }, buttons: $("#dosubmit"), onError : "该登录账号已存在。", onWait : "请稍候..." }).defaultPassed(); $("#loginPwd").formValidator({ onShow:"",onFocus:"登录密码长度应该为5-20位之间" }).inputValidator({ min:5,max:50,onError:"登录密码长度应该为5-20位之间" }); $("#reUserPwd").formValidator({onShow:"",onFocus:"至少1个长度",onCorrect:"密码一致"}).inputValidator({min:1,empty:{leftEmpty:false,rightEmpty:false,emptyError:"重复密码两边不能有空符号"},onError:"重复密码不能为空,请确认"}).compareValidator({desID:"loginPwd",operateor:"=",onError:"2次密码不一致,请确认"}); $("#userPhone").inputValidator({min:0,max:11,onError:"你输入的手机号码非法,请确认"}).regexValidator({ regExp:"mobile",dataType:"enum",onError:"手机号码格式错误" }).ajaxValidator({ dataType : "json", async : true, url : Think.U('Home/Users/checkLoginKey'), success : function(data){ var json = WST.toJson(data); if( json.status == "1" ) { return true; } else { return false; } return "该手机号码已被使用"; }, buttons: $("#dosubmit"), onError : "该手机号码已存在。", onWait : "请稍候..." }); $("#shopCompany").formValidator({onShow:"",onFocus:"请输入公司名称",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"公司名称不能为空,请确认"}); $("#shopTel").formValidator({onShow:"",onFocus:"请输入店铺电话",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"店铺电话不能为空,请确认"}); $("#shopName").formValidator({onShow:"",onFocus:"店铺名称不能超过20个字符",onCorrect:"输入正确"}).inputValidator({min:1,max:40,onError:"店铺名称长度不符合要求,请确认"}).ajaxValidator({ dataType : "json", async : true, url : Think.U('Home/Shops/checkShopName'), success : function(data){ var json = WST.toJson(data); if( json.status == "1" ) { return true; } else { return false; } }, buttons: $("#dosubmit"), onError : "该店铺名称已被使用", onWait : "请稍候..." }); $("#userName").formValidator({onShow:"",onFocus:"请输入店主姓名",onCorrect:"输入正确"}).inputValidator({min:1,max:20,onError:"店主姓名不能为空,请确认"}); $("#shopAddress").formValidator({onShow:"",onFocus:"请输入店铺地址",onCorrect:"输入正确"}).inputValidator({min:1,max:120,onError:"店铺地址不能为空,请确认"}); $("#areaId3").formValidator({onFocus:"请选择所属地区"}).inputValidator({min:1,onError: "请选择所属地区"}); $("#goodsCatId3").formValidator({onFocus:"请选择所属行业"}).inputValidator({min:1,onError: "请选择所属行业"}); $("#bankId").formValidator({onFocus:"请选择所属银行"}).inputValidator({min:1,onError: "请选择所属银行"}); $("#bankNo").formValidator({onShow:"",onFocus:"请输入银行卡号",onCorrect:"输入正确"}).inputValidator({min:16,max:19,onError:"银行卡号格式错误,请确认"}); $("#bankUserName").formValidator({onShow:"",onFocus:"请输入银行卡所有人名称",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"请输入银行卡所有人名称"}); var uploading = null; uploadFile({ server:Think.U('Home/Shops/uploadPic'),pick:'#filePicker', formData: {dir:'shops'}, callback:function(f){ layer.close(uploading); var json = WST.toJson(f); $('#preview').attr('src',WST.DOMAIN+"/"+json.file.savepath+json.file.savethumbname); $('#shopImg').val(json.file.savepath+json.file.savename); $('#preview').show(); }, progress:function(rate){ uploading = WST.msg('正在上传图片,请稍后...'); } }); ShopMapInit({}); } function initTime(objId,val){ for(var i=0;i<24;i++){ $('<option value="'+i+'" '+((val==i)?"selected":'')+'>'+i+':00</option>').appendTo($('#'+objId)); $('<option value="'+(i+0.5)+'" '+((val==(i+0.5))?"selected":'')+'>'+i+':30</option>').appendTo($('#'+objId)); } } function getAreas(obj,id,val,fval,callback){ var params = {}; params.parentId = id; $("#"+obj).empty(); var s = []; if(fval!=''){ s = fval.split(','); for(var i=0;i<s.length;i++){ $("#"+s[i]).empty(); $("#"+s[i]).html("<option value=''>请选择</option>"); } } $.post(Think.U('Home/Areas/queryByList'),params,function(data,textStatus){ var json = WST.toJson(data); if(json.status==1 && json.list){ var opts,html=[]; html.push("<option value=''>请选择</option>"); for(var i=0;i<json.list.length;i++){ opts = json.list[i]; html.push('<option value="'+opts.areaId+'" '+((val==opts.areaId)?'selected':'')+'>'+opts.areaName+'</option>'); } $("#"+obj).html(html.join('')); if(typeof(callback)=='function')callback(); } }); } // 修改开始2015-4-25 function getCommunityForOpen(){ $('#areaTree').empty(); var areaId = $('#areaId2').val(); $.post(Think.U('Home/Areas/getAreaAndCommunitysByList'),{areaId:areaId},function(data,textStatus){ var json = data; if(json.list){ var html = []; json = json.list; for(var i=0;i<json.length;i++){ communitysCount = 0 html.push("<dl class='areaSelect' id='"+json[i]['areaId']+"'>"); html.push("<dt class='ATRoot' id='node_"+json[i]['areaId']+"' isshow='0'><span class='tleft'>"+json[i]['areaName']+":</span><span> <input type='checkbox' all='1' class='AreaNode' onclick='javascript:selectArea(this)' id='ck_"+json[i]['areaId']+"' value='"+json[i]['areaId']+"'><label for='ck_"+json[i]['areaId']+"' value='"+json[i]['areaId']+"'>全区配送</label></span> <small>(已选<span class='count'>"+communitysCount+"</span>个社区)</small></dt>"); if(json[i].communitys && json[i].communitys.length){ html.push('<dd>'); for(var j=0;j<json[i].communitys.length;j++){ var isCommunitySelected = ""; if(typeof(relateCommunity)!="undefined"){ isCommunitySelected = ($.inArray(json[i].communitys[j]['communityId'],relateCommunity)>-1)?" checked ":""; } html.push("<div class='ATNode' id='node_"+json[i]['areaId']+"_"+json[i].communitys[j]['communityId']+"'><input type='checkbox' "+isCommunitySelected+" id='ck_"+json[i]['areaId']+"_"+json[i].communitys[j]['communityId']+"' all='0' class='AreaNode' onclick='javascript:selectArea(this)' value='"+json[i].communitys[j]['communityId']+"'><label for='ck_"+json[i]['areaId']+"_"+json[i].communitys[j]['communityId']+"'>"+json[i].communitys[j]['communityName']+"</label></div>"); } html.push('</dd>'); } html.push("</dl>"); } $('#areaTree').html(html.join('')); $('#expendAll').parent().removeClass('Hide'); $('#expendAll').attr('checked','checked'); } }); } function selectArea(v){ count = 0; if($(v).attr('all')=='1'){ $('input[id^="'+$(v).attr('id')+'_"]').each(function(){ $(this)[0].checked = $(v)[0].checked; $(this)[0].disabled = $(v)[0].checked; if ($(v)[0].checked) {count++}; }); }else{ $(v).closest('dl').find('input[type="checkbox"]').each(function(){ if ($(this).prop('checked') == true) { count++}; }); } $(v).closest('dl').find('.count:first').html(count); } function showXiey(id){ layer.open({ type: 2, title: '店铺用户注册协议', shadeClose: true, shade: 0.8, area: ['1000px', ($(window).height() - 50) +'px'], content: [Think.U('Home/Index/toUserProtocol')], btn: ['同意并注册'], yes: function(index, layero){ layer.close(index); } }); } var time = 0; var isSend = false; var isUse = false; function getVerifyCode(){ if($.trim($("#userPhone").val())==''){ WST.msg('请输入手机号码!', {icon: 5}); return; } if(isSend )return; isSend = true; var params = {}; params.userPhone = $.trim($("#userPhone").val()); if(WST.SMS_VERFY=='1'){ var html = []; html.push('<table class="wst-smsverfy"><tr><td width="80" align="right">'); html.push('验证码:</td><td><input type="text" id="smsVerfy" size="12" class="wst-text" maxLength="8">'); html.push('<img style="vertical-align:middle;cursor:pointer;height:39px;" class="verifyImg" src="'+WST.DOMAIN+'/Apps/Home/View/default/images/clickForVerify.png" title="刷新验证码" onclick="javascript:getVerify()"/>'); html.push('</td></tr></table>'); layer.open({ title:'请输入验证码', type: 1, area: ['420px', '160px'], //宽高 content: html.join(''), btn: ['发送验证码', '取消'], success: function(layero, index){ getVerify(); }, yes: function(index, layero){ isSend = true; params.smsVerfy = $.trim($('#smsVerfy').val()); WST.msg('正在发送短信,请稍后...',{time:600000}); $.post(Think.U('Home/Users/getPhoneVerifyCode'),params,function(data,textStatus){ var json = WST.toJson(data); if(json.status!=1){ WST.msg(json.msg, {icon: 5}); time = 0; isSend = false; getVerify(); }if(json.status==1){ WST.msg('短信已发送,请注册查收'); layer.close(index); time = 130; $('#timeTips').css('width','100px'); $('#timeTips').html('获取验证码(130)'); $('#mobileCode').val(json.phoneVerifyCode); var task = setInterval(function(){ time--; $('#timeTips').html('获取验证码('+time+")"); if(time==0){ isSend = false; clearInterval(task); $('#timeTips').html("重新获取验证码"); } },1000); } }); }, cancel:function(){ isSend = false; } }); }else{ isSend = true; WST.msg('正在发送短信,请稍后...',{time:600000}); $.post(Think.U('Home/Users/getPhoneVerifyCode'),params,function(data,textStatus){ var json = WST.toJson(data); if(json.status!=1){ WST.msg(json.msg, {icon: 5}); time = 0; isSend = false; }if(json.status==1){ WST.msg('短信已发送,请注册查收'); time = 130; $('#timeTips').css('width','100px'); $('#timeTips').html('获取验证码(130)'); $('#mobileCode').val(json.phoneVerifyCode); var task = setInterval(function(){ time--; $('#timeTips').html('获取验证码('+time+")"); if(time==0){ isSend = false; clearInterval(task); $('#timeTips').html("重新获取验证码"); } },1000); } }); } } function visitorOpenShop(){ if(WST.PHONE_VERFY=='1'){ if($.trim($("#mobileCode").val())==""){ WST.msg('请输入验证码!', {icon: 5}); $("#mobileCode").focus(); return; } }else{ if($.trim($("#verify").val())==""){ WST.msg('请输入验证码!', {icon: 5}); $("#verify").focus(); return; } } if(!document.getElementById("protocol").checked){ WST.msg('必须同意使用协议才允许注册!', {icon: 5}); return; } var params = WST.fillForm('.wstipt'); if(params.shopImg==''){ WST.msg('请上传店铺图片!', {icon: 5}); return; } if(params.latitude=='' || params.longitude==''){ WST.msg('请标注店铺地址!', {icon: 5}); return; } var relateArea = [0]; var relateCommunity = [0]; $('.AreaNode').each(function(){ if($(this)[0].checked){ if($(this).attr('all')==1){ relateArea.push($(this).val()); }else{ relateCommunity.push($(this).val()); } } }); params.relateAreaId=relateArea.join(','); params.relateCommunityId=relateCommunity.join(','); if(params.relateAreaId=='0' && params.relateCommunityId=='0'){ WST.msg('请选择配送区域!', {icon: 5}); return; } if(params.isInvoice==1 && params.invoiceRemarks==''){ WST.msg('请输入发票说明!', {icon: 5}); return; } if(parseInt(params.serviceStartTime,10)>parseInt(params.serviceEndTime,10)){ WST.msg('开始营业时间不能大于结束营业时间!', {icon: 5}); return; } params.protocol = document.getElementById("protocol").checked?1:0; $.post(Think.U('Home/Shops/openShop'),params,function(data,textStatus){ var json = WST.toJson(data); if(json.status>0){ WST.msg('您的开店申请已提交,请等候商城管理员审核!', {icon: 1}, function(){ location.href=WST.DOMAIN +'/index.php'; }); }else{ if(WST.PHONE_VERFY=='0')getVerify(); WST.msg(json.msg, {icon: 5}); } }); } var shopMap = null; var toolBar = null; function ShopMapInit(option){ var opts = {zoom:$('#mapLevel').val(),longitude:$('#longitude').val(),latitude:$('#latitude').val()}; if(shopMap)return; $('#shopMap').show(); shopMap = new AMap.Map('mapContainer', { view: new AMap.View2D({ zoom:opts.zoom }) }); if(opts.longitude!='' && opts.latitude){ shopMap.setZoomAndCenter(opts.zoom, new AMap.LngLat(opts.longitude, opts.latitude)); var marker = new AMap.Marker({ position: new AMap.LngLat(opts.longitude, opts.latitude), //基点位置 icon:"http://webapi.amap.com/images/marker_sprite.png" }); marker.setMap(shopMap); } shopMap.plugin(["AMap.ToolBar"],function(){ toolBar = new AMap.ToolBar(); shopMap.addControl(toolBar); toolBar.show(); }); AMap.event.addListener(shopMap,'click',function(e){ shopMap.clearMap(); $('#longitude').val(e.lnglat.getLng()); $('#latitude').val(e.lnglat.getLat()); var marker = new AMap.Marker({ position: e.lnglat, //基点位置 icon:"http://webapi.amap.com/images/marker_sprite.png" }); marker.setMap(shopMap); }); AMap.event.addListener(shopMap,'zoomchange',function(e){ $('#mapLevel').val(this.getZoom()); }) } function userShopInit(){ $("#expendAll").click(function(){ if ($(this).prop('checked')==true) {$("dl.areaSelect dd").removeClass('Hide')} else{$("dl.areaSelect dd").addClass('Hide')} }) $.formValidator.initConfig({ theme:'Default',mode:'AutoTip',formID:"myshop",debug:true,submitOnce:true,onSuccess:function(){ userOpenShop(); return false; },onError:function(msg){ }}); $("#shopName").formValidator({onShow:"",onFocus:"店铺名称不能超过20个字符",onCorrect:"输入正确"}).inputValidator({min:1,max:40,onError:"店铺名称长度不符合要求,请确认"}).ajaxValidator({ dataType : "json", async : true, url : Think.U('Home/Shops/checkShopName',{"id":$("#id").val()}), success : function(data){ var json = WST.toJson(data); if( json.status == "1" ) { return true; } else { return false; } }, buttons: $("#dosubmit"), onError : "该店铺名称已被使用", onWait : "请稍候..." }); $("#userName").formValidator({onShow:"",onFocus:"请输入店主姓名",onCorrect:"输入正确"}).inputValidator({min:1,max:20,onError:"店主姓名不能为空,请确认"}); $("#shopCompany").formValidator({onShow:"",onFocus:"请输入公司名称",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"公司名称不能为空,请确认"}); $("#shopTel").formValidator({onShow:"",onFocus:"请输入店铺电话",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"店铺电话不能为空,请确认"}); $("#shopAddress").formValidator({onShow:"",onFocus:"请输入店铺地址",onCorrect:"输入正确"}).inputValidator({min:1,max:120,onError:"店铺地址不能为空,请确认"}); $("#areaId3").formValidator({onFocus:"请选择所属地区"}).inputValidator({min:1,onError: "请选择所属地区"}); $("#goodsCatId1").formValidator({onFocus:"请选择所属行业"}).inputValidator({min:1,onError: "请选择所属行业"}); $("#bankId").formValidator({onFocus:"请选择所属银行"}).inputValidator({min:1,onError: "请选择所属银行"}); $("#bankNo").formValidator({onShow:"",onFocus:"请输入银行卡号",onCorrect:"输入正确"}).inputValidator({min:16,max:19,onError:"银行卡号格式错误,请确认"}); $("#bankUserName").formValidator({onShow:"",onFocus:"请输入银行卡所有人名称",onCorrect:"输入正确"}).inputValidator({min:1,max:50,onError:"请输入银行卡所有人名称"}); $("#userPhone").inputValidator({min:0,max:11,onError:"你输入的手机号码非法,请确认"}).regexValidator({ regExp:"mobile",dataType:"enum",onError:"手机号码格式错误" }).ajaxValidator({ dataType : "json", async : true, url : Think.U('Home/Users/checkLoginKey'), success : function(data){ var json = WST.toJson(data); if( json.status == "1" ) { return true; } else { return false; } return "该手机号码已被使用"; }, buttons: $("#dosubmit"), onError : "该手机号码已存在。", onWait : "请稍候..." }); initTime('serviceStartTime','8'); initTime('serviceEndTime','20'); if(WST.PHONE_VERFY=='0')getVerify(); var uploading = null; uploadFile({ server:Think.U('Home/Shops/uploadPic'),pick:'#filePicker', formData: {dir:'shops'}, callback:function(f){ layer.close(uploading); var json = WST.toJson(f); $('#preview').attr('src',WST.DOMAIN+"/"+json.file.savepath+json.file.savethumbname); $('#shopImg').val(json.file.savepath+json.file.savename); $('#preview').show(); }, progress:function(rate){ uploading = WST.msg('正在上传图片,请稍后...'); } }); ShopMapInit({}); } function userOpenShop(){ var params = WST.fillForm('.wstipt'); if(params.latitude=='' || params.longitude==''){ WST.msg('请标注店铺地址!', {icon: 5}); return; } if(params.shopImg==''){ WST.msg('请上传店铺图片!', {icon: 5}); return; } var relateArea = [0]; var relateCommunity = [0]; $('.AreaNode').each(function(){ if($(this)[0].checked){ if($(this).attr('all')==1){ relateArea.push($(this).val()); }else{ relateCommunity.push($(this).val()); } } }); params.relateAreaId=relateArea.join(','); params.relateCommunityId=relateCommunity.join(','); if(params.relateAreaId=='0' && params.relateCommunityId=='0'){ WST.msg('请选择配送区域!', {icon: 5}); return; } if(params.isInvoice==1 && params.invoiceRemarks==''){ WST.msg('请输入发票说明!', {icon: 5}); return; } if(parseInt(params.serviceStartTime,10)>parseInt(params.serviceEndTime,10)){ WST.msg('开始营业时间不能大于结束营业时间!', {icon: 5}); return; } if(!document.getElementById('protocol').checked){ WST.msg('必须同意使用协议才允许注册!',{icon: 5}); return; } if(params.mobileCode==''){ WST.msg('请输入验证码!',{icon: 5}); return; } var ll = layer.load('正在处理,请稍后...', 3); $.post(Think.U('Home/Shops/openShopByUser'),params,function(data,textStatus){ var json = WST.toJson(data); if(json.status=='1'){ WST.msg('您的开店申请已提交,请等候商城管理员审核!', {icon: 1}, function(){ location.href=Think.U('Home/Orders/queryByPage'); }); }else{ WST.msg(json.msg, {icon: 5}); if(WST.PHONE_VERFY=='0')getVerify(); } layer.close(ll); }); }